<
operating system, programming> The ease with which a piece of
software (or
file format) can be "ported", i.e. made to run
on a new
platform and/or compile with a new
compiler.
The most important factor is the language in which the
software is written and the most
portable language is almost
certainly
C (though see
Vaxocentrism for counterexamples).
This is true in the sense that C compilers are available for
most systems and are often the first compiler provided for a
new system. This has led several compiler writers to compile
other languages to C code in order to benefit from its
portability (as well as the quality of compilers available for
it).
The least
portable type of language is obviously {assembly
code} since it is specific to one particular (family of)
processor(s). It may be possible to translate mechanically
from one assembly code (or even
machine code) into another
but this is not really
portability. At the other end of the
scale would come
interpreted or
semi-compiled languages
such as
LISP or
Java which rely on the availability of a
portable interpreter or
virtual machine written in a lower
level language (often C for the reasons outlined above).
The act or result of porting a program is called a "
port".
E.g. "I've nearly finished the
Pentium port of my big bang
simulation."
Portability is also an attribute of
file formats and depends
on their adherence to
standards (e.g.
ISO 8859) or the
availability of the relevant "viewing" software for different
platforms (e.g.
PDF).
(1997-06-18)